/*
js中内存空间的变量定义时自定分配，程序员无法指定区恶名大小
js执行平台虽然都存在GC机制，但是优于不同算法的限制，代码书写不当同样会导致内存无法回收，产生泄漏

表清除算法的缺点就是找到对象空间后直接进行回收，而有可能产生大量碎片化空间

在一个作用域链上，只要通过根可以有路径查找到的对象都是可达对象
let a=2;let b = a ; ab都属于全局作用域中的对象，所有都是可达对象

v8是一款执行引擎，但不只有chrome再用，nodejs平台也在用
v8内存空间的确设限，但是1.4G 700M 只是老生代存储区大小

新生代存储区在进行垃圾回收的时候 采用标记整理，找到的是所有活动对象，蒋他们拷贝至老生代而不是所有对象
新生代存储区的对象在满足一定条件之后，会被晋升至老生代对象

空间复制的时候产生From和To二个等大小的空间，始终有一部分是空间不适用的，即使很小也是一种浪费，属于用空间换时间

GC操作的执行会导致程序的停止，等到GC工作结束之后应用执行才会继续

通过浏览器中的任务管理器可以监控到程序运行时DOM与JS堆分别占据的内存空间变化
通过Timeline时序图可以获取程序运行过程中js堆内存的走势图
通过Timeline时序图恶意分析出当程序运行是否存在垃圾回收机制
通过堆快照功能可以检查程序运行过程中是否存在分离DOM



*/